package com.ax.base.common.domain;

import java.util.Date;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

public class BaseArea {
    /**
     * 行政区划ID
     */
    private Long areaId;

    /**
     * 行政区划代码
     */
    private String areaCode;

    /**
     * 行政区划简称
     */
    private String areaName;

    /**
     * 拼音首字母
     */
    private String firstLetter;

    /**
     * 行政区划全称
     */
    private String fullName;

    /**
     * 上级行政区划ID
     */
    private Long parentAreaId;

    /**
     * 行政区划类型
     */
    private Integer areaType;

    /**
     * 维护人员ID
     */
    private Long registrarId;

    /**
     * 维护人员姓名
     */
    private String registrarName;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 修改时间
     */
    private Date updateTime;

    /**
     * 状态(0:无效,1:有效)
     */
    private Integer flag;
    
    private String name;
    private Integer type;
    private Long parentId;
    private Long menuId;
    
    public Long getMenuId() {
		return menuId;
	}

	public void setMenuId(Long menuId) {
		this.menuId = menuId;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public Integer getType() {
		return type;
	}

	public void setType(Integer type) {
		this.type = type;
	}

	public Long getParentId() {
		return parentId;
	}

	public void setParentId(Long parentId) {
		this.parentId = parentId;
	}

	public BaseArea(Long areaId, String areaCode, String areaName, String firstLetter, String fullName, Long parentAreaId, Integer areaType, Long registrarId, String registrarName, Date createTime, Date updateTime, Integer flag) {
        this.areaId = areaId;
        this.areaCode = areaCode;
        this.areaName = areaName;
        this.firstLetter = firstLetter;
        this.fullName = fullName;
        this.parentAreaId = parentAreaId;
        this.areaType = areaType;
        this.registrarId = registrarId;
        this.registrarName = registrarName;
        this.createTime = createTime;
        this.updateTime = updateTime;
        this.flag = flag;
    }

    public BaseArea() {
        super();
    }

    public Long getAreaId() {
        return areaId;
    }

    public void setAreaId(Long areaId) {
        this.areaId = areaId;
    }

    public String getAreaCode() {
        return areaCode;
    }

    public void setAreaCode(String areaCode) {
        this.areaCode = areaCode == null ? null : areaCode.trim();
    }

    public String getAreaName() {
        return areaName;
    }

    public void setAreaName(String areaName) {
        this.areaName = areaName == null ? null : areaName.trim();
    }

    public String getFirstLetter() {
        return firstLetter;
    }

    public void setFirstLetter(String firstLetter) {
        this.firstLetter = firstLetter == null ? null : firstLetter.trim();
    }

    public String getFullName() {
        return fullName;
    }

    public void setFullName(String fullName) {
        this.fullName = fullName == null ? null : fullName.trim();
    }

    public Long getParentAreaId() {
        return parentAreaId;
    }

    public void setParentAreaId(Long parentAreaId) {
        this.parentAreaId = parentAreaId;
    }

    public Integer getAreaType() {
        return areaType;
    }

    public void setAreaType(Integer areaType) {
        this.areaType = areaType;
    }

    public Long getRegistrarId() {
        return registrarId;
    }

    public void setRegistrarId(Long registrarId) {
        this.registrarId = registrarId;
    }

    public String getRegistrarName() {
        return registrarName;
    }

    public void setRegistrarName(String registrarName) {
        this.registrarName = registrarName == null ? null : registrarName.trim();
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public Integer getFlag() {
        return flag;
    }

    public void setFlag(Integer flag) {
        this.flag = flag;
    }

    @Override
    public String toString() {
        return ToStringBuilder.reflectionToString(this, ToStringStyle.MULTI_LINE_STYLE);
    }
}